Computing systems and associated networks have provided technical capabilities that have revolutionized the way human beings work, play, and communicate, providing fundamental support for the information age. Nearly every aspect of our lives is affected in some way by computing systems. The proliferation of networks has allowed computing systems to share data and communicate, vastly increasing information access.
Networking technology is founded upon the ability to assign addresses to each device in a network, and on the ability to route messages between those devices using the assigned addresses. Virtual networks operate using an additional layer of abstraction on top of the physical addresses that allow the complexity of the underlying physical networks to be hidden to virtual network nodes so that addressing may be more simplified.
Virtual networks are not limited to having physical machines as nodes. For instance, nodes of a virtual network may be virtual entities, such as virtual machines. The virtual addresses of the virtual nodes in a virtual network thus need not match the physical address of the physical machine that supports the virtual node. Furthermore, between each node in a virtual network is a virtual link. From the perspective of a node on the virtual network, the virtual link is a straightforward link. However, from the physical perspective, the link may be quite simple, but may also be quite complex, invoking physical gateways, routers, bridges, and so forth. Thus, a virtual network appears to each node in the virtual network as being within the same network, but the virtual network is abstracted over the physical enabling technologies, and thus the virtual network may span one or many physical networks. Virtual networks are, for instance, used to connect virtual machines belonging to a single tenant of a cloud computing environment.
In order to allow interaction between the virtual network and nodes outside of the outside world, a gateway is typically used. The gateway receives packets from outside of the virtual network and that are destined for nodes within the virtual network, and sends packets from inside of the virtual network to outside of the virtual network. Of course, the gateway is not needed for packets that are both sent and received within the virtual network.
The subject matter claimed herein is not limited to embodiments that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one exemplary technology area where some embodiments described herein may be practiced.